NexusPi Git Node
lib/microReticulum/src/Resource.h copilot/add-rtnode-configuration-options (9529fa8a) Text, 3.07 KB
Tff7b72#Tff7b72pragma once
Tff7b72#Tff7b72include T8b949e"Destination.h"
Tff7b72#Tff7b72include T8b949e"Type.h"
Tff7b72#Tff7b72include T8b949e<memory>
Tff7b72#Tff7b72include T8b949e<cassert>
Te6edf3namespace Te6edf3RNS Tb4b4b4{
Te6edf3class Te6edf3ResourceDataTb4b4b4;
Te6edf3class Te6edf3PacketTb4b4b4;
Te6edf3class Te6edf3DestinationTb4b4b4;
Te6edf3class Te6edf3LinkTb4b4b4;
Te6edf3class Te6edf3ResourceTb4b4b4;
Te6edf3class Te6edf3Resource Tb4b4b4{
Te6edf3publicTff7b72:
Te6edf3class Te6edf3Callbacks Tb4b4b4{
Te6edf3publicTff7b72:
T8b949e// CBA std::function apparently not implemented in NRF52 framework
T8b949e//typedef std::function<void(const Resource& resource)> concluded;
Te6edf3using Te6edf3concluded Tff7b72= Tffa657voidTb4b4b4(Tff7b72*Tb4b4b4)Tb4b4b4(Tff7b72const Te6edf3ResourceTff7b72& Te6edf3resourceTb4b4b4)Tb4b4b4;
Te6edf3using Te6edf3progress Tff7b72= Tffa657voidTb4b4b4(Tff7b72*Tb4b4b4)Tb4b4b4(Tff7b72const Te6edf3ResourceTff7b72& Te6edf3resourceTb4b4b4)Tb4b4b4;
Te6edf3publicTff7b72:
Te6edf3concluded Te6edf3_concluded Tff7b72= Tffa657nullptrTb4b4b4;
Te6edf3progress Te6edf3_progress Tff7b72= Tffa657nullptrTb4b4b4;
Te6edf3friend Te6edf3class Te6edf3ResourceTb4b4b4;
Tb4b4b4}Tb4b4b4;
Te6edf3publicTff7b72:
Te6edf3ResourceTb4b4b4(Te6edf3TypeTff7b72:Tff7b72:Te6edf3NoneConstructor Te6edf3noneTb4b4b4) Tb4b4b4{
Te6edf3MEMTb4b4b4(Ta5d6ff"Ta5d6ffResource NONE object createdTa5d6ff"Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Te6edf3ResourceTb4b4b4(Tff7b72const Te6edf3ResourceTff7b72& Te6edf3resourceTb4b4b4) Tff7b72: Te6edf3_objectTb4b4b4(Te6edf3resourceTb4b4b4.Te6edf3_objectTb4b4b4) Tb4b4b4{
Te6edf3MEMTb4b4b4(Ta5d6ff"Ta5d6ffResource object copy createdTa5d6ff"Tb4b4b4)Tb4b4b4;
Tb4b4b4}
T8b949e//Resource(const Link& link = {Type::NONE});
Te6edf3ResourceTb4b4b4(Tff7b72const Te6edf3BytesTff7b72& Te6edf3dataTb4b4b4, Tff7b72const Te6edf3LinkTff7b72& Te6edf3linkTb4b4b4, Tff7b72const Te6edf3BytesTff7b72& Te6edf3request_idTb4b4b4, Tffa657bool Te6edf3is_responseTb4b4b4, Tffa657double Te6edf3timeoutTb4b4b4)Tb4b4b4;
Te6edf3ResourceTb4b4b4(Tff7b72const Te6edf3BytesTff7b72& Te6edf3dataTb4b4b4, Tff7b72const Te6edf3LinkTff7b72& Te6edf3linkTb4b4b4, Tffa657bool Te6edf3advertise Tff7b72= Tffa657trueTb4b4b4, Tffa657bool Te6edf3auto_compress Tff7b72= Tffa657trueTb4b4b4, Te6edf3CallbacksTff7b72:Tff7b72:Te6edf3concluded Te6edf3callback Tff7b72= Tffa657nullptrTb4b4b4, Te6edf3CallbacksTff7b72:Tff7b72:Te6edf3progress Te6edf3progress_callback Tff7b72= Tffa657nullptrTb4b4b4, Tffa657double Te6edf3timeout Tff7b72= T79c0ff0.0Tb4b4b4, Tffa657int Te6edf3segment_index Tff7b72= T79c0ff1Tb4b4b4, Tff7b72const Te6edf3BytesTff7b72& Te6edf3original_hash Tff7b72= Tb4b4b4{Te6edf3TypeTff7b72:Tff7b72:Te6edf3NONETb4b4b4}Tb4b4b4, Tff7b72const Te6edf3BytesTff7b72& Te6edf3request_id Tff7b72= Tb4b4b4{Te6edf3TypeTff7b72:Tff7b72:Te6edf3NONETb4b4b4}Tb4b4b4, Tffa657bool Te6edf3is_response Tff7b72= Tffa657falseTb4b4b4)Tb4b4b4;
Te6edf3virtual Tff7b72~Te6edf3ResourceTb4b4b4(Tb4b4b4)Tb4b4b4{
Te6edf3MEMTb4b4b4(Ta5d6ff"Ta5d6ffResource object destroyedTa5d6ff"Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Te6edf3ResourceTff7b72& Te6edf3operator Tff7b72= Tb4b4b4(Tff7b72const Te6edf3ResourceTff7b72& Te6edf3resourceTb4b4b4) Tb4b4b4{
Te6edf3_object Tff7b72= Te6edf3resourceTb4b4b4.Te6edf3_objectTb4b4b4;
Tff7b72return Tff7b72*Te6edf3thisTb4b4b4;
Tb4b4b4}
Te6edf3operator Tffa657boolTb4b4b4(Tb4b4b4) Tff7b72const Tb4b4b4{
Tff7b72return Te6edf3_objectTb4b4b4.Te6edf3getTb4b4b4(Tb4b4b4) Tff7b72!Tff7b72= Tffa657nullptrTb4b4b4;
Tb4b4b4}
Tffa657bool Te6edf3operator Tff7b72< Tb4b4b4(Tff7b72const Te6edf3ResourceTff7b72& Te6edf3resourceTb4b4b4) Tff7b72const Tb4b4b4{
Tff7b72return Te6edf3_objectTb4b4b4.Te6edf3getTb4b4b4(Tb4b4b4) Tff7b72< Te6edf3resourceTb4b4b4.Te6edf3_objectTb4b4b4.Te6edf3getTb4b4b4(Tb4b4b4)Tb4b4b4;
T8b949e//return _object->_hash < resource._object->_hash;
Tb4b4b4}
Te6edf3publicTff7b72:
T8b949e//p static def accept(advertisement_packet, callback=None, progress_callback = None, request_id = None):
Te6edf3publicTff7b72:
T8b949e//p def hashmap_update_packet(self, plaintext):
T8b949e//p def hashmap_update(self, segment, hashmap):
T8b949e//p def get_map_hash(self, data):
T8b949e//p def advertise(self):
T8b949e//p def __advertise_job(self):
T8b949e//p def watchdog_job(self):
T8b949e//p def __watchdog_job(self):
T8b949e//p def assemble(self):
T8b949e//p def prove(self):
Tffa657void Te6edf3validate_proofTb4b4b4(Tff7b72const Te6edf3BytesTff7b72& Te6edf3proof_dataTb4b4b4)Tb4b4b4;
T8b949e//p def receive_part(self, packet):
T8b949e//p def request_next(self):
T8b949e//p def request(self, request_data):
Tffa657void Td2a8ffcancelTb4b4b4(Tb4b4b4)Tb4b4b4;
T8b949e//p def set_callback(self, callback):
T8b949e//p def progress_callback(self, callback):
Tffa657float Td2a8ffget_progressTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
T8b949e//p def get_transfer_size(self):
T8b949e//p def get_data_size(self):
T8b949e//p def get_parts(self):
T8b949e//p def get_segments(self):
T8b949e//p def get_hash(self):
T8b949e//p def is_compressed(self):
Tffa657void Td2a8ffset_concluded_callbackTb4b4b4(Te6edf3CallbacksTff7b72:Tff7b72:Te6edf3concluded Te6edf3callbackTb4b4b4)Tb4b4b4;
Tffa657void Td2a8ffset_progress_callbackTb4b4b4(Te6edf3CallbacksTff7b72:Tff7b72:Te6edf3progress Te6edf3callbackTb4b4b4)Tb4b4b4;
Te6edf3stdTff7b72:Tff7b72:Te6edf3string Td2a8fftoStringTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
T8b949e// getters
Tff7b72const Te6edf3BytesTff7b72& Td2a8ffhashTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
Tff7b72const Te6edf3BytesTff7b72& Td2a8ffrequest_idTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
Tff7b72const Te6edf3BytesTff7b72& Td2a8ffdataTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
Tff7b72const Te6edf3TypeTff7b72:Tff7b72:Te6edf3ResourceTff7b72:Tff7b72:Te6edf3status Td2a8ffstatusTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
Tff7b72const Tffa657size_t Td2a8ffsizeTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
Tff7b72const Tffa657size_t Td2a8fftotal_sizeTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
T8b949e// setters
Te6edf3protectedTff7b72:
Te6edf3stdTff7b72:Tff7b72:Te6edf3shared_ptrTff7b72<Te6edf3ResourceDataTff7b72> Te6edf3_objectTb4b4b4;
Tb4b4b4}Tb4b4b4;
Te6edf3class Te6edf3ResourceAdvertisement Tb4b4b4{
Tb4b4b4}Tb4b4b4;
Tb4b4b4}
Served by rngit 1.4.2 - Generated in 0.02s